Feature-based software design pattern detection

نویسندگان

چکیده

Software design patterns are standard solutions to common problems in software and architecture. Knowing that a particular module implements pattern is shortcut comprehension. Manually detecting time consuming challenging task, therefore, researchers have proposed automatic detection techniques. However, these techniques show low performance for certain patterns. In this work, we introduce approach, DPDF improves the over state-of-the-art by using code features with machine learning classifiers automatically train detector. creates semantic representation of Java source call graph, applies Word2Vec algorithm on construct word-space geometric model code. then builds classifier trained labelled dataset identifies 80% Precision 79% Recall. Additionally, compared two existing namely FeatureMaps & MARPLE-DPD. Empirical results demonstrate our approach outperforms approaches approximately 35% 15% respectively terms Precision. The run-time also supports practical applicability classifier.

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

SPQR: Formalized Design Pattern Detection and Software Architecture Analysis

We present formal analysis methods and results from SPQR, the System for Pattern Query and Recognition, a toolkit that detects instances of known design patterns directly from object-oriented source code in an automated and flexible manner. Based on previous work in rhocalculus (extended Abadi/Cardelli sigma-calculus) and Pattern/Object Markup Language (POML), the SPQR toolset is easily retarge...

متن کامل

A tool for design pattern detection and software architecture reconstruction

It is well known that software maintenance and evolution are expensive activities, both in terms of invested time and money. Reverse engineering activities support the obtainment of abstractions and views from a target system that should help the engineers to maintain, evolve and eventually re-engineer it. Two important tasks pursued by reverse engineering are design pattern detection and softw...

متن کامل

Customizable feature based design pattern recognition integrating multiple techniques

factory, Adapter, Builder, Command, Composite, Decorator, Factory method, Observer, Prototype, Singleton, State, Strategy, Template method, and Visitor patterns. The approach focuses on reducing search space, but it may return large number of false positives when certain roles are removed for detecting patterns. Arceli et al. [46] have presented a design pattern detection approach which is base...

متن کامل

The Hyper/UML Approach for Feature Based Software Design

The market requests complex but adaptable software systems. There are different concepts to meet this demand, for example software reusability, component-based development, agile processes, generative programming and domain analysis. For similar products within a domain product lines are a very promising approach for shortening development time and cost and for improving quality. Software produ...

متن کامل

Automatic Design Pattern Detection

We detect design patterns in legacy code combining static and dynamic analyses. The analyses do not depend on coding or naming conventions. We classify potential pattern instances according to the evidence our analyses provide. We discuss our approach for the Observer, Composite, Mediator, Chain of Responsibility and Visitor Patterns. Our Java analysis tool analyzes Java programs. We evaluate o...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Journal of Systems and Software

سال: 2022

ISSN: ['0164-1212', '1873-1228']

DOI: https://doi.org/10.1016/j.jss.2021.111179